package org.dubbo.consumer2.config;

import org.apache.dubbo.config.ApplicationConfig;
import org.apache.dubbo.config.ConsumerConfig;
import org.apache.dubbo.config.RegistryConfig;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class DubboConfiguration {

    // 应用配置
    @Bean("uniqueApplicationConfig") // 使用唯一名称避免冲突
    public ApplicationConfig applicationConfig() {
        ApplicationConfig config = new ApplicationConfig();
        config.setName("recommend-system-consumer");
        config.setQosEnable(false); // 禁用QoS服务
        return config;
    }

    // 注册中心配置
    @Bean
    public RegistryConfig registryConfig() {
        RegistryConfig config = new RegistryConfig();
        config.setAddress("zookeeper://192.168.206.130:2181");
        config.setClient("curator"); // 使用Curator客户端
        return config;
    }

    // 消费者配置
    @Bean
    public ConsumerConfig consumerConfig() {
        ConsumerConfig config = new ConsumerConfig();
        config.setTimeout(1200000); // 设置超时时间（毫秒）
        config.setCheck(false); // 启动时不检查提供者是否存在
        return config;
    }
}